[Wesbos] 배열 기초체력 다지기2


오늘의 목표

이번 챕터에서 다룰 기능들

  1. array.some()
  2. array.every()
  3. array.find()
  4. array.findIndex()

주어진 배열

1
2
3
4
5
6
7
8
9
10
11
12
13
14
const people = [
{ name: 'Wes', year: 1988 },
{ name: 'Kait', year: 1986 },
{ name: 'Irv', year: 1970 },
{ name: 'Lux', year: 2015 },
];

const comments = [
{ text: 'Love this!', id: 523423 },
{ text: 'Super good', id: 823423 },
{ text: 'You are the best', id: 2039842 },
{ text: 'Ramen is my fav food ever', id: 123523 },
{ text: 'Nice Nice Nice!', id: 542328 },
];

some()

💡 배열 안에서 “특정” 요소들이 주어진 조건에 해당하는지 True or False 형태로 출력!

1
2
3
4
// 최소 한명이라도 19살 이상인 사람이 있는가?

const isAdult = people.some(person => ((new Date()).getFullYear() - person.year >= 19);
console.log(isAult);

every()

💡 배열 안에서 “모든” 요소들이 주어진 조건에 해당하는지 True or False 형태로 출력!

1
2
3
4
5
6
// 모든 사람들이 19세 이상인가?

const isEvery = people.every(
(person) => new Date().getFullYear - people.year >= 19
);
console.log({ isEvery });

find()

💡 배열 안에서 판별함수(조건)를 만족하는 첫 번째 요소값을 반환

1
2
3
// ID가 823423인 사람이 쓴 comment는 무엇인가?
const findID = comments.find((comment) => comment.id === 823423);
console.log(findID);

findIndex()

💡 배열 안에서 판별함수(조건)를 만족하는 첫 번째 요소의 index값을 반환

1
2
3
4
5
6
// ID가 823423인 사람이 쓴 comment를 삭제하시오.

const index = comments.findIndex((comment) => comment.id === 823423);

const newComments = [...comments.slice(0, index), ...comments.slice(index + 1)];
console.table(newComments);

Author

Hoonjoo

Posted on

2022-01-04

Updated on

2022-02-07

Licensed under

Comments